package com.zl.gmadmin.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.zl.gmadmin.common.BaseEntity;
import io.swagger.annotations.ApiModel;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 数据字典
 *
 * @author zl.sir
 * @since 2021-04-12
 */
@TableName("sys_dict")
@ApiModel(value = "字典表")
public class SysDict extends BaseEntity implements Serializable {

	private static final long serialVersionUID = 8456688004827705180L;
	/**
	 * ID
	 */
	@TableId(value = "dict_id  ",type = IdType.AUTO)
	private Long id;

	/**
	 * 字典名称
	 */
 	@TableField("name")
	private String name;

	/**
	 * 描述
	 */
 	@TableField("description")
	private String description;

	/**
	 * 创建者
	 */
 	@TableField(value = "create_by",fill = FieldFill.INSERT)
	private String createBy;

	/**
	 * 更新者
	 */
 	@TableField(value = "update_by",fill = FieldFill.UPDATE)
	private String updateBy;

	/**
	 * 创建日期
	 */
 	@TableField(value = "create_time",fill = FieldFill.INSERT)
	private LocalDateTime createTime;

	/**
	 * 更新时间
	 */
 	@TableField(value = "update_time",fill = FieldFill.UPDATE)
	private LocalDateTime updateTime;

    /**
     * 字典数据详情
     */
    @TableField(exist = false)
    private List<SysDictDetail> dictDetailList;

    /**
     * 是否启用
     */
    @TableField("enabled")
    private Boolean enabled;

    public Boolean getEnabled() {
        return enabled;
    }

    public void setEnabled(Boolean enabled) {
        this.enabled = enabled;
    }

    public Long getId() {
    return id;
  }

  public void setId(Long id) {
    this.id = id;
  }


  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }


  public String getDescription() {
    return description;
  }

  public void setDescription(String description) {
    this.description = description;
  }


  @Override
  public String getCreateBy() {
    return createBy;
  }

  @Override
  public void setCreateBy(String createBy) {
    this.createBy = createBy;
  }


  public String getUpdateBy() {
    return updateBy;
  }

  public void setUpdateBy(String updateBy) {
    this.updateBy = updateBy;
  }


  @Override
  public LocalDateTime getCreateTime() {
    return createTime;
  }

  @Override
  public void setCreateTime(LocalDateTime createTime) {
    this.createTime = createTime;
  }


  @Override
  public LocalDateTime getUpdateTime() {
    return updateTime;
  }

  @Override
  public void setUpdateTime(LocalDateTime updateTime) {
    this.updateTime = updateTime;
  }

    public List<SysDictDetail> getDictDetailList() {
        return dictDetailList;
    }

    public void setDictDetailList(List<SysDictDetail> dictDetailList) {
        this.dictDetailList = dictDetailList;
    }

    public SysDict() {
    }


}
